package com.molichuxing.gateway.bff.car.entity.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.molichuxing.framework.dto.ResponseRootDto;
import com.molichuxing.framework.dto.RootDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 车联监控-车辆失联Vo
 * The type Offline alarm vo.
 *
 * @author wanghualin
 * @date 2020 -03-31 11:29:06
 */
@Data
public class OfflineAlarmVo extends ResponseRootDto {

    private static final long serialVersionUID = -1913724712886628203L;
    @ApiModelProperty(value = "车id")
    private Integer carId;
    /**
     * 报警id
     */
    @ApiModelProperty(value = "报警id")
    private String alarmId;
    @ApiModelProperty(value = "车架号")
    private String vin;

    @ApiModelProperty(value = "车牌号")
    private String licencePlate;

    @ApiModelProperty(value = "最后上报时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Date lastReportDate;

    @ApiModelProperty(value = "车型名称")
    private String vehicleName;

    @ApiModelProperty(value = "开始报警时间")
    private String beginTime;

    @ApiModelProperty(value = "提车门店")
    private String deliveryStoreName;

    @ApiModelProperty(value = "用户账号")
    private String userName;

    @ApiModelProperty(value = "订单code")
    private Long  orderCode;
    /**
     * 真实姓名
     */
    @ApiModelProperty(value = "真实姓名")
    private String realName;

    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    private String phone;
    /**
     * 订单状态
     */
    @ApiModelProperty(value = "订单状态")
    private Integer orderStatus;
    /**
     * 订单状态
     */
    @ApiModelProperty(value = "订单类型")
    private Integer orderType;
    /**
     * 订单状态
     */
    @ApiModelProperty(value = "订单类型Str")
    private String orderTypeStr;
    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    private String idNumber;
    /**
     * 经纬度
     * longitude = 经度
     * latitude = 纬度
     */
    @ApiModelProperty(value = "最后通讯地址")
    private OfflineAlarmVo.Location location;

    @Data
    class Location extends RootDto {
        private static final long serialVersionUID = -8242369737861633333L;
        /**
         * 经度
         */
        @ApiModelProperty(value = "经度")
        private String longitude;

        /**
         * 纬度
         */
        @ApiModelProperty(value = "纬度")
        private String latitude;
    }

}
